// #ifdef H5
const jweixin = require('@/js-sdk/jweixin-module')
// #endif

import moment from 'moment'
/**
 * 毫秒转换友好的显示格式
 * 输出格式：21小时前
 * stringTime为:年-月-日 时:分:秒
 * @param  {[type]} time [description]
 * @return {[type]}      [description]
 */
export function friendlyFormatTime(stringTime) {
  const minute = 1000 * 60;
  const hour = minute * 60;
  const day = hour * 24;
  const week = day * 7;
  const month = day * 30;
  const time1 = new Date().getTime(); //当前的时间戳
  const time2 = Date.parse(new Date(stringTime)); //指定时间的时间戳
  const time = time1 - time2;

  let result = null;
  if (time < 0) {
    result = "--";
  }else if(time/month>2){
    result = `${moment(stringTime).format('MM-DD HH:mm')}`
  } else if (time / month >= 1 && time / month <=2) {
    result = parseInt(time / month) + "月前";
  } else if (time / week >= 1) {
    result = parseInt(time / week) + "周前";
  } else if (time / day >= 1) {
    result = parseInt(time / day) + "天前";
  } else if (time / hour >= 1) {
    result = parseInt(time / hour) + "小时前";
  } else if (time / minute >= 1) {
    result = parseInt(time / minute) + "分钟前";
  } else {
    result = "刚刚";
  }
  return result;
}
//计算经纬度数据
export  function getDistance(lat1, lon1, lat2, lon2) {
  const radLat1 = (lat1 * Math.PI) / 180; //将角度换算为弧度
  const radLat2 = (lat2 * Math.PI) / 180; //将角度换算为弧度
  const a = radLat1 - radLat2;
  const b = (lon1 * Math.PI) / 180 - (lon2 * Math.PI) / 180;
  let s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(a / 2), 2) + Math.cos(radLat1) * Math.cos(radLat2) * Math.pow(
    Math.sin(b / 2), 2)));
  s = s * 6378137.0; // 取WGS84标准参考椭球中的地球长半径(单位:m)
  return s
}

//标签分组
export function tagsList (arr,tags='skillTags') {
  if(arr.length){
    return function (index){
      const list = []
      const skillTages=   arr[index][tags]
      if(skillTages.length){
        skillTages.split('，').map(c=>{
          list.push(c)
        })
      }
      return list
    }
  }
}

//图片分处
export  function  imageSubstr (imgList) {
  let tempUrl = ''
  if(imgList?.length){
    imgList.map(item=>{
      tempUrl+=`${item},`
    })
  }
  const imageUrl = tempUrl.substr(0,tempUrl.length-1)
  return imageUrl
}
//一键导航
export function openLocation(opt){
  const {    latitude,
    longitude,
    companyName:name,
    companyAddress:address} = opt
  uni.openLocation({
    latitude,
    longitude,
    name,
    address,
    success: ()=>{
    },
    fail:e=>{
      uni.showToast({
        title:'导航失败',
        duration: 2000,
        icon:'none'
      });
    }
  });
}
//判断是否有http或者https
export function isHttp(e) {
  if (e?.includes('http') || e?.includes('https')) {

    return e
  } else {
    return `${process.uniEnv.imageUrl}${e}`
  }
}

//分享操作
export function setShare(cb,{that,title,desc,imgUrl}={title:document.title,desc:document.title,imgUrl:'/static/img/11772c8712b11598385a9c1df5f5a7e.jpg'}) {
  // 因为对axios进行了封装，所以，这里使用到了async await
  let url = ''
  const href = window.location.href
  url = href.split('#')[0] //截取当前地址栏的URL，（不带#hash部分）
  const params = {
    url,
  }
  cb(params).then((res) => {
    const rtData = JSON.parse(res.result)
    jweixin.config({
      debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来，若要查看传入的参数，可以在pc端打开，参数信息会通过log打出，仅在pc端时才会打印。
      appId: rtData.appId, // 必填，公众号的唯一标识
      timestamp: rtData.timeStamp, // 必填，生成签名的时间戳
      nonceStr: rtData.nonceStr, // 必填，生成签名的随机串
      signature: rtData.signature, // 必填，签名，见附录1
      openTagList: ['wx-open-launch-weapp'],
      jsApiList: [
        'updateAppMessageShareData',
        'updateTimelineShareData',
        'onMenuShareAppMessage', //旧的接口，即将废弃
        'onMenuShareTimeline', //旧的接口，即将废弃
      ], // 必填，需要使用的JS接口列表，所有JS接口列表见附录2
    })
    jweixin.error(function (res) {
      //window.location.reload()
    })
    jweixin.ready(function () {
      that.isWx = true
      const thatData = {link:href,title,desc,imgUrl}
      jweixin.updateAppMessageShareData(wxShares(thatData))
      //自定义“分享到朋友圈”及“分享到QQ空间”按钮的分享内容（1.4.0）
      jweixin.updateTimelineShareData(wxShares(thatData))

      jweixin.onMenuShareAppMessage(wxShares(thatData))
      //自定义“分享到朋友圈”及“分享到QQ空间”按钮的分享内容（1.4.0）
      jweixin.onMenuShareTimeline(wxShares(thatData))
    })
  })
}

//分享
function  wxShares({link,title,desc,imgUrl}){
  console.log('分享')
  return {
    title: title || document.title, // 分享标题
    desc: desc || document.title, // 分享描述
    link, // 分享链接
    imgUrl, // 分享图标
    success: function () {},
    cancel: function () {
      // 用户取消分享后执行的回调函数
    },
  }
}
